Package de.yaams.maker.helper.helpcenter

Source Code of de.yaams.maker.helper.helpcenter.HelpViewer

/**
*
*/
package de.yaams.maker.helper.helpcenter;

import java.awt.BorderLayout;

import javax.swing.JPanel;
import javax.swing.JScrollPane;

import org.jdesktop.swingx.JXEditorPane;

import com.ezware.common.Strings;

import de.yaams.maker.helper.gui.YEx;
import de.yaams.maker.helper.gui.YHeader;
import de.yaams.maker.helper.gui.rightclick.YRightClickMenuText;

/**
* @author abt
*
*/
public class HelpViewer extends JPanel {
  private static final long serialVersionUID = -8488848346473249006L;
 
  protected YHeader header;
  protected JXEditorPane editor;
  protected HelpFile help;
 
  /**
   * Create a new HelpViewer
   */
  public HelpViewer(String id) {
    super(new BorderLayout());
   
    setId(id);
  }
 
  /**
   * Set a new content
   *
   * @param id
   */
  public void setId(String id) {
    // clear
    removeAll();
   
    // set
    try {
     
      // read
      help = HelpCenterManagement.get(id);
     
      // build layout
      header = new YHeader(help.getTitle(), help.getIcon() + "_help");
      add(header, BorderLayout.NORTH);
     
      editor = new JXEditorPane(help.getUrl());
      editor.setEditable(false);
      YRightClickMenuText.install(editor);
     
      add(new JScrollPane(editor), BorderLayout.CENTER);
    } catch (Throwable t) {
      editor = new JXEditorPane();
      editor.setText(t.getClass() + " " + t.getMessage() + " " + Strings.stackStraceAsString(t));
      add(editor);
      YEx.info("Can not display helpfile " + id + " (" + HelpCenterManagement.get(id) + ")", t);
    }
   
    invalidate();
    revalidate();
  }
 
}
TOP

Related Classes of de.yaams.maker.helper.helpcenter.HelpViewer

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.